import http from '@/utils/http';

/**
 * 供应商相关接口
 */
const supplierApi = {
  /**
   * 获取供应商列表
   * @param {Object} params - 查询参数
   * @returns {Promise} 请求结果
   */
  getSupplierList(params = {}) {
    return http.get('/suppliers', { params });
  },

  /**
   * 获取供应商详情
   * @param {Number} id - 供应商ID
   * @returns {Promise} 请求结果
   */
  getSupplierDetail(id) {
    return http.get(`/suppliers/${id}`);
  },

  /**
   * 创建供应商
   * @param {Object} data - 供应商数据
   * @returns {Promise} 请求结果
   */
  createSupplier(data) {
    return http.post('/suppliers', data);
  },

  /**
   * 更新供应商
   * @param {Number} id - 供应商ID
   * @param {Object} data - 供应商数据
   * @returns {Promise} 请求结果
   */
  updateSupplier(id, data) {
    return http.put(`/suppliers/${id}`, data);
  },

  /**
   * 删除供应商
   * @param {Number} id - 供应商ID
   * @returns {Promise} 请求结果
   */
  deleteSupplier(id) {
    return http.delete(`/suppliers/${id}`);
  },

  /**
   * 导入供应商数据
   * @param {FormData} formData - 包含供应商数据的表单
   * @returns {Promise} 请求结果
   */
  importSuppliers(formData) {
    return http.post('/suppliers/import', formData, {
      headers: {
        'Content-Type': 'multipart/form-data'
      }
    });
  },

  /**
   * 导出供应商数据
   * @param {Object} params - 导出参数
   * @returns {Promise} 请求结果
   */
  exportSuppliers(params = {}) {
    return http.get('/suppliers/export', { params, responseType: 'blob' });
  }
};

export default supplierApi; 